Ext.ns('Tm.bill');
Tm.bill.Task4BillIndexPanel = Ext.extend(Ext.Panel, {
			frame : true,
		    autoHeight:true,
            autoWidth:true,
			layout : 'fit',
			initComponent : function() {

			var form = new Tm.common.FormPanel({
		bodyStyle:'padding:5px 5px 0',
							items : [{
										layout : 'column',
										items : [{
													columnWidth : .2,
													layout : 'form',
													items : [{
																xtype : 'textfield',
																name : 'companyName',
																fieldLabel : '客户名称'
															}]
												}, {
													columnWidth : .2,
													layout : 'form',
													items : [{
																xtype : 'textfield',
																name : 'taskName',
																fieldLabel : '案例名称'
															}]
												}, {
													columnWidth : .2,
													layout : 'form',
													items : [{
																name : 'status',
																fieldLabel : '进展状态',
																// width:150,
																xtype : 'combo',
																mode : 'local',
																typeAhead : true,
																forceSelection : true,
																mode : 'local',
																triggerAction : 'all',
																emptyText : '请选择...',
																selectOnFocus : true,
																store : Tm.data.taskStates
															}]
												}]
									}]
						}); 
						



						
				var sm = new Ext.grid.CheckboxSelectionModel();
				var cm = new Ext.grid.ColumnModel([sm, new Ext.grid.RowNumberer({
									header : '序号'
								}), {
							header : 'id',
							width : 20,
							dataIndex : 'id',
							hidden : true
						}, {
							header : '案例中文名称',
							width : 80,
							dataIndex : 'cnName',
							sortable : true
						}, {
							header : '案例英文名称',
							width : 80,
							dataIndex : 'enName',
							sortable : true
						}, {
							header : '客户名称',
							width : 80,
							dataIndex : 'compName',
							sortable : true
						}, {
							header : '进展状态',
							width : 40,
							dataIndex : 'status',
							align : 'status',
							sortable : true
						}, {
							header : '创建日期',
							width : 150,
							format : 'Y-m-d',
							dataIndex : 'createTime'
						}]);
				cm.defaultSortable = true;
				var fields = [{
							name : 'id',
							type : 'int',
							mapping : 'id'
						},{
							name : 'compId',
							type : 'int',
							mapping : 'compId'
						}, {
							name : 'cnName',
							type : 'string',
							mapping : 'cnName'
						}, {
							name : 'enName',
							type : 'string',
							mapping : 'enName'
						}, {
							name : 'compName',
							type : 'string',
							mapping : 'compName'
						}, {
							name : 'status',
							type : 'string',
							mapping : 'status',
							editor : new Ext.form.ComboBox({
										name : 'status',
										fieldLabel : '是否启用',
										mode : 'local',
										editable : false,
										typeAhead : true,
										forceSelection : true,
										hiddenName : 'enable',
										mode : 'local',
										triggerAction : 'all',
										emptyText : '请选择...',
										selectOnFocus : true,
										store : Tm.data.taskStates,
										allowBlank : false
									})
						}, {
							name : 'createTime',
							type : 'date',
							mapping : 'createTime'
						}];
				var ds = new Ext.data.Store({
							id : 'Task4BillIndexPanelGridPanelStore',
							proxy : new Ext.data.HttpProxy({
										url : 'task/queryTask.do'
									}),
							reader : new Ext.data.JsonReader({
										totalProperty : 'totalProperty',
										root : 'root',
										id : 'id',
										fields : fields
									}),
							baseParams : {
								start : 0,
								limit : 20
							},
							sortInfo : {
								field : 'id',
								direction : 'ASC'
							},
							autoLoad : true,
							listeners : {
								beforeload : function() {
									Ext.apply(this.baseParams, form.getForm().getFieldValues(false));
								}
							}
						}

				);

				var grid = new Ext.grid.GridPanel({
							store : ds,
							sm : sm,
							cm : cm,
							border : false,
							stripeRows : true,
							autoHeight : true,
							viewConfig : {
								forceFit : true
							},
							bbar : new Ext.PagingToolbar({
										plugins : new Ext.ux.ProgressBarPager(),
										pageSize : 20,
										store : ds,
										displayInfo : true,
										emptyMsg : '没有记录'
									}),

							listeners : {
								celldblclick : function(grid, rowIndex, columnIndex, event) {
									
									var store = grid.getStore();
									var data = store.getAt(rowIndex).data;
									Ext.Ajax.request({
										url : 'task/getTask4Bill.do',
										method : 'POST',
										params : {
											taskId : data.id
										},
										success : function(response, action) {
											var task = Ext.decode(response.responseText);
											var billListPanel =new Tm.bill.BillListPanel({task :task});
											var billListWindow = new Tm.common.CommonWindow({
												id : 'task4BillIndexWindow',
												title : task.code+' 账单',
												height : 600,
												width : 800,
												resizable : true,
												// plain : true,
												// bodyStyle : 'padding:5px;',
												items : billListPanel
											});
											billListWindow.show();
										},
										failure : function(action, response) {
											App.setAlert(App.Error, '后台出错');

										}
									});

								}
							}
						});
				var toolBar = new Ext.Toolbar({
							hideBorders : true,
							buttons : [{
										text : '查询',
										iconCls : 'act_queryIcon',
										handler : function() {
											ds.load();
										}
									}, {
										xtype : 'tbseparator'
									}, {
										text : '重置',
										iconCls : 'act_resetIcon',
										handler : function() {
											form.getForm().reset();
										}
									}]
						});
				Ext.apply(this, {
							tbar : toolBar,
							items : [form, grid]
						});
				Tm.bill.Task4BillIndexPanel.superclass.initComponent.call(this);
			}
		});
